package com.headfirst.CreateMode.factory.abstractfactory.ingredientfactory;

import com.headfirst.CreateMode.factory.abstractfactory.chicagoingredient.*;
import com.headfirst.CreateMode.factory.abstractfactory.ingredient.*;

/**
 * 芝加哥的原料工厂
 */
public class ChicagoIngredientFactory implements PizzaIngredientFactory{
    @Override
    public Dough createDough() {
        return new ThickCrustDough();
    }

    @Override
    public Sauce createSauce() {
        return new PlumTomatoSauce();
    }

    @Override
    public Cheese createCheese() {
        return new MozzarellaCheese();
    }

    @Override
    public Veggies[] createVeggies() {
        return new Veggies[]{new BlackOlives(),
                             new Spinach(),
                             new Eggplant()};
    }

    @Override
    public Pepperoni createPepperoni() {
        return new SlicedPepperoni();
    }

    @Override
    public Clams createClam() {
        return new FrozenClams();
    }
}
